
<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>文章列表</title>
    <link rel="stylesheet" href="./libs/bootstrap/css/bootstrap.min.css">
    <link rel="stylesheet" href="css/reset.css">
    <link rel="stylesheet" href="css/iconfont.css">
    <link rel="stylesheet" href="css/main.css">
    <!-- jq -->
    <script src="./libs/jquery-1.12.4.min.js"></script>
    <!-- 模板引擎 -->
    <script src="./libs/template-web.js"></script>
    <!-- 接口文档 -->
    <script src="./libs/https.js"></script>
    <!-- 引入日期插件 -->
    <script src="./libs/jedate/js/jedate.js"></script>
    <link rel="stylesheet" href="./libs/jedate/css/jeDate-test.css">
    <link rel="stylesheet" href="./libs/jedate/css/jedate.css">

    <!-- 导入富文本插件 -->
    <script src="./libs/wangEditor/wangEditor.min.js"></script>
</head>

<body>
    <div class="container-fluid">
        <div class="common_title">
            文章编辑
        </div>
        <div class="container-fluid common_con">
            <form class="form-horizontal article_form" id="form">
                <div class="form-group">
                    <label for="inputTitle" class="col-sm-2 control-label">文章标题：</label>
                    <div class="col-sm-10">
                        <input type="text" name="title" class="form-control title" id="inputTitle" value="文章标题文字">
                    </div>
                </div>
                <div class="form-group">
                    <label for="inputCover" class="col-sm-2 control-label">文章封面：</label>
                    <div class="col-sm-10">
                        <img src="images/pic06.jpg" class="article_cover">
                        <input name="cover" type="file" id="inputCover">
                    </div>
                </div>
                <div class="form-group">
                    <label for="inputCategory" class="col-sm-2 control-label">文章类别：</label>
                    <div class="col-sm-4">
                        <select class="form-control category" name="categoryId">
                            <option>类别一</option>
                            <option>类别二</option>
                            <option>类别三</option>
                            <option selected>类别四</option>
                            <option>类别五</option>
                        </select>
                    </div>
                </div>
                <div class="form-group">
                    <label class="col-sm-2 control-label">发布时间：</label>
                    <div class="col-sm-4">
                          <!-- 日期插件的容器 -->
                       <div class="jeinpbox">
                        <input  name="date"  type="text"    class="jeinput" id="testico" placeholder="YYYY-MM-DD">
                        <div class="icons jebtns"></div>
                    </div>
                    </div>
                </div>
                <div class="form-group">
                    <label for="inputEmail3" class="col-sm-2 control-label">文章内容：</label>
                    <div class="col-sm-10">
                        <!-- 富文本插件的容器 -->
                        <div id="dpw">
                            <p>欢迎使用 <b>dpwEditor</b> 富文本编辑器</p>
                        </div>
                    </div>
                </div>
                <div class="form-group">
                    <div class="col-sm-offset-2 col-sm-10">
                        <button type="submit" class="btn btn-success btn-edit">修改</button>
                        <button type="submit" class="btn btn-default btn-draft">存为草稿</button>
                    </div>
                </div>
            </form>
        </div>
    </div>
</body>
<!-- 给下拉框添加模板引擎 -->
<script type="text/html" id="tpl_list">

    {{each}}
    <option value="{{$value.id}}">{{$value.name}}</option>
    {{/each}}
</script>
</html>
<script>
    $(function () {
         // 1.图片预览功能
         $('#inputCover').on('change',function(){
            $('.article_cover').attr('src',URL.createObjectURL(this.files[0]))
        })
        
        // 2.向下拉框文章类别渲染ajax请求后得到的数据
        $.ajax({
            type: 'get',
            url: BigNew.category_list,
            success: function(backData) {
                // console.log(backData);
                if(backData.code==200){
                    let data=backData.data
                    let htmlStr=template('tpl_list',data)
                    $('.category').html(htmlStr)

                }      
            }
        })

        // 3. 给日期图标设置点击事件
        $('.jebtns').on('click',function(){
            // 调用日期插件核心方法
            jeDate(
                '#testico',
                {
                    trigger: false,
                    format: 'YYYY-MM-DD',
                    theme:{ bgcolor:"#00A1CB",color:"#ffffff", pnColor:"#00CCFF"},
                    zIndex:20000,
                }
                
            )
        })

        // 4.富文本插件代码

        const E = window.wangEditor
        const editor = new E('#dpw')
        // 或者 const editor = new E( document.getElementById('div1') )
        editor.create()

        // 5.获得点击编辑的文章的id
        // 核心
        let articleId=window.location.search.split('=')[1]

        // 通过得到的id发起ajax请求
        $.ajax({
            type: 'get',
            url: BigNew.article_search,
            data: {
                id:articleId
            },
            success: function(backData) {
                // console.log(backData);
                // 将获取信息渲染到页面中

                let data=backData.data
                $('#inputTitle').val(data.title)  //标题
                $('.article_cover').attr('src',data.cover)  //图片地址
                $('.category').val(data.categoryId)    //id 1-4
                $('.jeinput').val(data.date)   //时间

                // 使用富文本插件的方法,设置内容
                editor.txt.html(data.content);    //文档内容

            }
        })

          // 8. 给修改按钮设置点击事件
          $('.form-group button').on('click',function(e){
            e.preventDefault();
            if ($(this).text() == '修改') {
                // 发布
                changeData('已发布');
            } else {
                // 草稿
                changeData('草稿');
            }
        })

         // 10. 封装函数: 修改文章数据
         function changeData(state) {
            let fd = new FormData(document.querySelector('form'));// title cover date categoryid
            fd.append('state', state);
            fd.append('content', editor.txt.html());
            fd.append('id', articleId);

            // 11. 发起ajax请求
            $.ajax({
                type: 'post',
                url: BigNew.article_edit,
                data: fd,
                contentType: false,
                processData: false,
                success: function(backData) {
                    // console.log(backData);
                    if (backData.code == 200) {
                        alert(backData.msg);
                        window.location = './article_list.html';
                    }
                }
            })
        }

    })
</script>